package 自定义异常_上课练习;

	/*
	 * 1.创建 成员变量 money id
	 * 2.创建 成员方法 .存钱() .取钱()
	 * 3.getter setter 全参无参构造器
	 * 
	 *   2.1 存钱(Double money) 实参钱+账户钱
	 *   2.2 取钱(Double money) 执行一定会异常，因为是编译时异常，一定需要手动处理
	 *   判断 
	 *   如果(余额>=取出的钱；余额-=取出的钱)
	 *   否则 (余额<取出的钱 钱不够；算一下还差多少钱needMoney,抛出异常[顺便把差的钱needMoney当参数传给异常的构造器] )
	 * 
	 */

public class accountManager  {
	
	private Double money; // 总金额
	private Integer id; // id  没吊用
	
	public void saveMoney(Double money) { // 存钱方法
		this.money += money;
	}
	public void withDraw(Double money) throws MeiQianExcption { // 取存钱方法
		if(this.money >= money) {
			this.money -= money;
		}else {	
			// 抛出 编译时异常
				//还差多少钱
				double needMoney = money - this.money;
				throw new MeiQianExcption(needMoney);
		}
	}
	
	// getter setter 全参无参构造器
	public Double getMoney() { 
		return money;
	}
	public void setMoney(Double money) {
		this.money = money;
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public accountManager(Double money, Integer id) {
		super();
		this.money = money;
		this.id = id;
	}
	public accountManager() {
		super();
		// TODO Auto-generated constructor stub
	}
	@Override
	public String toString() {
		return "accountManager [money=" + money + ", id=" + id + "]";
	}


}
